package org.me.service.impl;

import java.io.Serializable;
import java.util.List;
import org.me.data.GenericDaoHibernate;
import org.me.entityBeans.TNotarias;
import org.me.service.NotariaServiceHibernate;

public class NotariaServiceHibernateImpl implements NotariaServiceHibernate{
    
    private GenericDaoHibernate genericDaoHibernateImpl;

    public GenericDaoHibernate getGenericDaoHibernateImpl() {
        return genericDaoHibernateImpl;
    }

    public void setGenericDaoHibernateImpl(GenericDaoHibernate genericDaoHibernateImpl) {
        this.genericDaoHibernateImpl = genericDaoHibernateImpl;
    }  
   
    //Graba o actualiza  x su Id
    @Override
    public void saveOrUpdateNotaria(TNotarias notaria) {
        this.getGenericDaoHibernateImpl().saveOrUpdate(notaria);
    }
    
    //Borra  x su Id
    @Override
    public String deleteNotaria(TNotarias notaria) {
        return this.getGenericDaoHibernateImpl().delete(notaria);
    }
    
    //Trae todas las Notarias ordenados x Id      
    @Override
    public List<TNotarias> findAllNotarias() {        
        return this.getGenericDaoHibernateImpl().findByOnlyNamedQuery( "TNotarias.findAll");
    }    
    
    //Trae la Notaria que coincida con el nombre 
    @Override
    public List<TNotarias> findByNameNotaria(String nomNotaria){          
        return this.getGenericDaoHibernateImpl().findByCriterio( "TNotarias.findByVDescripcionNotaria", "vDescripcionNotaria", nomNotaria );
    }  
    
    //Trae la Notaria que coincida con el id
    @Override
    public TNotarias findByIdNotaria(Serializable id){        
        return  this.getGenericDaoHibernateImpl().findById(TNotarias.class, id);
    }
    
}
